The GNU 64-bit PL8 compiler: Toward an open standard environment for firmware development

نویسندگان

  • Wolfgang Gellerich
  • Torsten Hendel
  • Rudolf Land
  • Helge Lehmann
  • Michael Mueller
  • Peter H. Oden
  • Hartmut Penner
چکیده

For two decades, large parts of zSeries firmware have been written in the PL8 programming language. The existence of a large amount of mature zSeries firmware source code and our excellent experience with PL8 for system programming suggest keeping this language. However, the firmware address space of today s zSeries servers may exceed 2 GB, raising the need for a new 64-bit PL8 compiler, since the original implementation, developed at the IBM Thomas J. Watson Research Center, Yorktown Heights, New York, supports only 32-bit platforms. The GNU compiler collection (GCC) (GNU is a freeware UNIX -like operating system) has been used to translate those parts of firmware written in C for some years and has also proved successful in compiling Linux for zSeries. This fact, combined with the highly modular GCC design, suggested reimplementing PL8 within the GCC framework. In this paper, we report on the extension of PL8 to support 64-bit addressing, its implementation as a GCC front end, and the validation of the new compiler. We also evaluate PL8 as a language for highly reliable low-level programming and give some performance data. The paper documents the high level of quality achieved by the GCC open-source project and how such software fits into the traditional IBM software development processes.

برای دانلود رایگان متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

منابع مشابه

Open-standard development environment for IBM System z9 host firmware

When the PL8 64-bit GNU compiler collection front end was introduced with the IBM z990 system, it laid the foundation to move toward an open-standard development environment for the i390 layer of IBM System ze host firmware. However, when the z990 system was developed, the proprietary project development library system and the table of contents object file format for i390 code were still being ...

متن کامل

Porting to 64-bit GNU/Linux Systems

More and more 64-bit systems are showing up on the market—and developers are porting their applications to these systems. Most code runs directly without problems—but there is a number of sometimes quite subtile problems that developers have to be aware of for portable programming and porting. This paper illustrates some problems on porting an application to 64-bit and also shows how use a 64-b...

متن کامل

Development of a System for Teaching C/C++ Using Robots and Open Source Software in a CS1 Course

This paper describes the development of a system for teaching C/C++ using LegoTM RCX Robots in a CS1 college course on introductory programming. The system has been implemented using an integrated development environment (IDE) developed by the open source community (Code::Blocks). We have modified the IDE so that it can call a C/C++ cross-compiler for the RCX whose standard firmware has been re...

متن کامل

A Compact Intermediate Format for SIMICS

Instruction set architecture (ISA) simulators are an increasingly popular class of tools for both research and commercial purposes. Common applications include trace generation, program development, and compatibility support. A major concern with ISA simulators is performance and memory overhead. A common technique for achieving good performance is to use threaded code, which involves translati...

متن کامل

NTL vs FLINT

All tests were carried out on a very lightly loaded machine with a 64-bit Intel “Haswell” CPU (Intel Xeon CPU E5-2698 v3 at 2.30GHz) with plenty of memory (over 250GB). The operating system was Cent OS. The compiler was gcc v4.8.5. We compared NTL v9.9.1 with FLINT v2.5.2. These were both built using GMP v6.1.0. All of these were the most recent releases of these packages at the time we carried...

متن کامل

ذخیره در منابع من


  با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید

عنوان ژورنال:
  • IBM Journal of Research and Development

دوره 48  شماره 

صفحات  -

تاریخ انتشار 2004